package com.example.server.web.domain.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.example.server.web.domain.StudentQuestionnaire;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDateTime;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class StuQuestionnaireBriefVo implements Serializable {

    /**
     * 学生问卷记录id
     */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "学生问卷记录id")
    @NotNull(message = "学生问卷记录id不能为空")
    private Long id;

    /**
     * 问卷id
     */
    @ApiModelProperty(value = "问卷id")
    @NotNull(message = "问卷id不能为空")
    private Long questionnaireId;

    /**
     * 是否完成（1代表已完成，0代表未完成）
     */
    @ApiModelProperty(value = "是否完成（1代表已完成，0代表未完成）")
    private Integer status;

    /**
     * 学生问卷创建时间
     */
    @ApiModelProperty(value = "学生问卷创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createByTime;

    @ApiModelProperty(value = "问卷名称",required = true)
    private String questionnaireName;

    @ApiModelProperty("班级id")
    private Long classId;

    @ApiModelProperty(value = "班级名称",required = false)
    private String className;

    @ApiModelProperty(value = "课程名称",required = false)
    private String courseName;

    @ApiModelProperty(value = "年度",required = false)
    private String year;
}
